package com.itheima.mapper.impl;

import com.itheima.bean.Student;
import com.itheima.mapper.StudentMapper;
import com.itheima.utils.MyBatisUtils;
import org.apache.ibatis.session.SqlSession;

import java.util.List;

public class StudentMapperImpl implements StudentMapper {
/*查找全部*/
    @Override
    public List<Student> selectAll() {
//        获取SqlSession对象
        SqlSession sqlSession = MyBatisUtils.getSqlSession();
//        执行映射配置文件中的sql文件，并接受结果
        List<Student> list = sqlSession.selectList("StudentMapper.selectAll");
//        释放资源
        sqlSession.close();
//        返回结果
        return list;
    }
/*根据id查找*/
    @Override
    public Student selectById(Integer id) {
//        获取sqlsession对象
        SqlSession sqlSession = MyBatisUtils.getSqlSession();
//        执行映射配置文件中的sql语句，并接受结果
        Student stu = sqlSession.selectOne("StudentMapper.selectById",id);
//        释放资源
        sqlSession.close();
//        返回结果
        return stu;
    }
/*添加*/
    @Override
    public Integer insert(Student stu) {
//       获取sqlsession对象
        SqlSession sqlSession = MyBatisUtils.getSqlSession();
//        执行结果
       Integer insert = sqlSession.insert("StudentMapper.insert", stu);
//        释放资源
        sqlSession.close();
//        返回结果
        return  insert;
    }
/*更改*/
    @Override
    public Integer update(Student stu) {
//        获取sqlsession对象
        SqlSession sqlSession = MyBatisUtils.getSqlSession();
//       执行语句
        int update = sqlSession.update("StudentMapper.update", stu);
//        释放资源
        sqlSession.close();
//        返回结果
        return update;
    }

    @Override
    /*删除*/
    public Integer delete(Integer id) {
        SqlSession sqlSession = MyBatisUtils.getSqlSession();
        int delete = sqlSession.delete("StudentMapper.update", id);
        sqlSession.close();
        return delete;
    }
}

